package com.ruoyi.business.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 出库单货物信息对象 wms_delivery_record_detail
 *
 * @author ruoyi
 * @date 2024-01-13
 */
@Data
public class WmsDeliveryRecordDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 出库单号 */
    @Excel(name = "出库单号")
    private String deliveryNo;

    /** 批次号 */
    @Excel(name = "批次号")
    private String lotNo;

    /** 货物id */
    @Excel(name = "货物id")
    private Long cargoId;

    /** 编码 */
    @Excel(name = "编码")
    private String cargoSn;

    /** 名称 */
    @Excel(name = "名称")
    private String cargoName;

    /** 重量 */
    @Excel(name = "重量")
    private BigDecimal cargoWeight;

    /** 体积 */
    @Excel(name = "体积")
    private BigDecimal cargoVolume;

    /** 单位 */
    @Excel(name = "单位")
    private String cargoUnit;

    /** 规格 */
    @Excel(name = "规格")
    private String cargoSpec;

    /** 尺码 */
    @Excel(name = "尺码")
    private String cargoSize;

    /** 类型：1良品，2不良品 */
    @Excel(name = "类型：1良品，2不良品")
    private Long type;

    /** 出库数量 */
    @Excel(name = "出库数量")
    private Long num;

    /** 单价 */
    @Excel(name = "单价")
    private BigDecimal unitPrice;

    /** 金额 */
    @Excel(name = "金额")
    private BigDecimal amount;

    /** 托盘id */
    @Excel(name = "托盘id")
    private Long trayId;

    /** 供应商 */
    @Excel(name = "供应商")
    private String supplierSn;

    /** 工厂id */
    @Excel(name = "工厂id")
    private Long factoryId;

    /** 仓库id */
    @Excel(name = "仓库id")
    private Long storeId;

    /** 库区id */
    @Excel(name = "库区id")
    private Long storeRegionId;

    /** 库位id */
    @Excel(name = "库位id")
    private Long storeRegionLocationId;

    /** 有效期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date validityDate;

    @JsonProperty(access = JsonProperty.Access.READ_ONLY)
    private Long trayNum;
}
